﻿using System;
using System.Collections.Generic;
using System.Web;
using NHibernate.Mapping.Attributes;
using System.Collections;
using System.Collections.ObjectModel;

namespace VemTransporte.Models.Basica
{
    [Class(Table = "TipoTelefone")]
    public class TipoTelefone
    {
        #region Atributos
        private int id;
        private string descricao;
        private IList<EmpresaTelefone> _EmpresaTelefones;
        #endregion

        #region Propriedades
        [Id(Name="Id", Column="PK_IdTipoTelefone")]
        [Generator(1, Class="native")]
        public virtual int Id
        {
            get { return id; }
            set { id = value; }
        }

        [Property(Column = "TTE_Descricao")]
        public virtual string Descricao
        {
            get { return descricao; }
            set { descricao = value; }
        }

        //(0, Name = "EmpresaTelefones", Table="EmpresaTelefone", Inverse=true)
        [Bag]
        [Key(1, Column="FK_IdTipoTelefone")]
        [OneToMany(2, ClassType=typeof(EmpresaTelefone))]/**/
        public virtual IList<EmpresaTelefone> EmpresaTelefones
        {
            get { return _EmpresaTelefones; }
            set { _EmpresaTelefones = value; }
        }

        /*public virtual void AddEmpresaTelefone(EmpresaTelefone empresaTelefone)
        {
            empresaTelefone.TipoTelefone = this;
            _EmpresaTelefones.Add(empresaTelefone);
        }/**/
        #endregion

        #region Contrutores
        public TipoTelefone() { }
        #endregion

        public override string ToString()
        {
            return this.descricao.ToString();
        }


    }
}